package org.ch00.test04.demo02;

/**
 * 教务老师 - 通过重载 anPai 方法，实现给不同专业老师安排上课
 * <p>
 * 重载一个方法，就安排一个专业老师
 * <p>
 * 如果专业老师有很多，则此类存在多个 anPai 方法，导致程序的维护性和扩展性差
 * <p>
 * 思考：能否只通过一个方法，就可以安排所有的专业老师上课？ - 可以，使用多态
 *
 * @author ZQX
 * @date 2025-03-03
 */
public class JiaoWuTeacher {
    private String name;
    private String school;

    public JiaoWuTeacher() {
    }

    public JiaoWuTeacher(String name, String school) {
        this.name = name;
        this.school = school;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSchool() {
        return school;
    }

    public void setSchool(String school) {
        this.school = school;
    }


    /**
     * 教务可以安排一切老师上课 - 只要是一个老师，不管什么专业 - extends（is-a）
     *
     * @param teacher
     */
    public void anPai(Teacher teacher) {
        System.out.println("教务老师职责 - 安装地点");
        System.out.println("教务老师职责 - 安装时间");

        // 父类对象，调用的是子类重写父类的方法
        teacher.teach();
    }


}
